import request from '@/utils/request'

// 登录
export function login(data) {
  return request({
    url: '/user/login',
    method: 'post',
    data
  })
}

// 注册
export function register(data) {
  return request({
    url: '/user/register',
    method: 'post',
    data
  })
}
// 退出登录
export function logout() {
  return request({
    url: '/user/logout',
    method: 'post'
  })
}

// 获取用户信息
export function getUserInfo() {
  return request({
    url: '/user/info',
    method: 'get'
  })
}

// 修改密码
/**
 * 修改用户密码
 * @param {Object} data - 修改密码参数
 * @param {string} data.userId - 用户ID (UUID格式)
 * @param {string} data.oldPassword - 旧密码
 * @param {string} data.newPassword - 新密码
 * @returns {Promise}
 */
export function changePassword(data) {
  return request({
    url: '/user/password',
    method: 'put',
    data
  })
}

/**
 * 发送密码重置验证码
 * @param {string} email - 用户注册的邮箱

 * @returns {Promise}
 */
export function sendVerifyCode(email) {
  return request({
    url: '/user/getEmailCode',
    method: 'post',
    data: { email }
  })
}

/**
 * 重置密码
 * @param {Object} data - 重置密码参数
 * @param {string} data.email - 用户注册的邮箱
 * @param {string} data.password - 新密码
 * @param {string} data.verifyCode - 邮箱收到的验证码
 * @returns {Promise}
 */
export function resetPassword(data) {
  return request({
    url: '/user/checkEmailCode',
    method: 'post',
    data: {
      email: data.email,
      password: data.password,
      code: data.verifyCode
    }
  })
} 